package com.program.houai.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * @version v1.0
 * @ProjectName: EOrder-master
 * @ClassName: VipCardOrderEntity
 * @Description: TODO(一句话描述该类的功能)
 * @Author: Topcheer
 * @Date: 2024/8/31 9:55
 */
@TableName("tb_vip_card_order")
@Data
@ApiModel(value ="小程序订单",description = "小程序订单的字段")
public class VipCardOrderEntity {

    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "主键")
    private int id;
    @ApiModelProperty(value = "用户Id")
    private int userId;
    @ApiModelProperty(value = "vip卡Id")
    private int cardId;
    @ApiModelProperty(value = "订单号")
    private String txnNo;
    @ApiModelProperty(value = "交易状态, 0  等待支付, 1 等待回调, 2 交易成功, 99 交易失败")
    private int txnStatus;
    @ApiModelProperty(value = "订单备注")
    private String remark;
    @ApiModelProperty(value = "单价")
    private int price;
    @ApiModelProperty(value = "数量")
    private int count;
    @ApiModelProperty(value = "总价")
    private int totalPrice;
    @ApiModelProperty(value = "支付类型0微信1支付宝")
    private int payType;

    @ApiModelProperty(value = "支付时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date payTime;

    @ApiModelProperty(value = "失效时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date expirationTime;

    @ApiModelProperty(value = "到期时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date effectiveTime;

    @ApiModelProperty(value = "实付金额")
    private int cashFee;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    @TableLogic
    private int isDeleted;
}
